import Vuex from 'vuex'
import Vue from 'vue'
// import product from './module/product'

Vue.use(Vuex)

const store = new Vuex.Store({
    // 状态集合
    state: {
        apkVersion: "",// 应用版本号
        userInfo: {
            name: 'xxx',
        }
    },

    getters: {
        userInfo: state => state.userInfo,

        getUserInfo(state) {
            return state.userInfo
        }
    },

    // 主要处理一些异步操作之类的
    actions: {
        setUserInfo({commit}, info) {
            commit('SET_USER_INFO', {info})
        }
    },

    // 被 actions 触发进而进行本地操作, 再进行同步状态流转
    mutations: {
        //应用检测更新的时候保存版本号
        APK_VERSION(state, version) {
            state.apkVersion = version
        },
        SET_USER_INFO(state, {info}) {
            state.userInfo = info
        }
    },

    // 状态管理模块化
    modules: {
        // product,
    }
})
export default store